#region head comment
/*
Code generate by YhdSdkTool.
email:starpeng@vip.qq.com
2013-01-21 23:00:56:919 +08:00
*/
#endregion

using System;
using System.Xml.Serialization;
using System.Collections.Generic;
using YhdSdk.Domain;
using YhdSdk.Domain.Product;
using YhdSdk.Response.Product;

namespace YhdSdk.Request.Product
{
    /// <summary>
    /// 查询系列产品信息
    ///<para></para>
    ///<para>查询商家系列产品(系列产品是一系列由尺寸大小和颜色组成的产品的统称,即虚品)信息。查询成功，则返回查询成功记录数及相应的系列产品信息，</para>
    ///<para>查询失败，则返回查询失败记录数，及相应的错误信息描述。</para>
    /// </summary>
    public class YhdSerialProductsSearchRequest : IYhdRequest<YhdSerialProductsSearchResponse>
    {
        /// <summary>
        /// 是否可见(强制'上'下架),1是0否
        /// </summary>
        [XmlElement("canShow")]
        public Nullable<Int32> CanShow
        {
            get;
            set;
        }

        /// <summary>
        /// 上下架状态0：下架，1：上架
        /// </summary>
        [XmlElement("canSale")]
        public Nullable<Int32> CanSale
        {
            get;
            set;
        }

        /// <summary>
        /// 产品审核状态:1.未审核;2.审核通过;3.审核失败
        /// </summary>
        [XmlElement("verifyFlg")]
        public Nullable<Int32> VerifyFlg
        {
            get;
            set;
        }

        /// <summary>
        /// 1号商城产品ID列表(逗号分隔,优先于outerIdList),最多100个
        /// </summary>
        [XmlArray("productIdList")]
        [XmlArrayItem("int64")]
        public List<Int64> ProductIdList
        {
            get;
            set;
        }

        /// <summary>
        /// 外部产品编码列表(逗号分隔),最多100个
        /// </summary>
        [XmlArray("outerIdList")]
        [XmlArrayItem("string")]
        public List<String> OuterIdList
        {
            get;
            set;
        }

        /// <summary>
        /// 产品中文名称
        /// </summary>
        [XmlElement("productCname")]
        public String ProductCname
        {
            get;
            set;
        }

        /// <summary>
        /// 当前页数(默认1)
        /// </summary>
        /// <example>2</example>
        [XmlElement("curPage")]
        public Nullable<Int32> CurPage
        {
            get;
            set;
        }

        /// <summary>
        /// 每页显示记录数(默认50、最大限制：100)
        /// </summary>
        /// <example>20</example>
        [XmlElement("pageRows")]
        public Nullable<Int32> PageRows
        {
            get;
            set;
        }

        /// <summary>
        /// Api接口名称
        /// </summary>
        public String ApiName
        {
            get{ return "yhd.serial.products.search"; }
        }

        /// <summary>
        /// 获取参数列表
        /// </summary>
        public IDictionary<string, string> GetParameters()
        {
            YhdDictionary parameters = new YhdDictionary();
            parameters.Add("canShow" ,this.CanShow);
            parameters.Add("canSale" ,this.CanSale);
            parameters.Add("verifyFlg" ,this.VerifyFlg);
            parameters.Add("productIdList" ,this.ProductIdList);
            parameters.Add("outerIdList" ,this.OuterIdList);
            parameters.Add("productCname" ,this.ProductCname);
            parameters.Add("curPage" ,this.CurPage);
            parameters.Add("pageRows" ,this.PageRows);
            return parameters;
        }

        /// <summary>
        /// 验证参数
        /// </summary>
        public void Validate()
        {
        }

    }
}
